package cn.iocoder.yudao.module.system.controller.admin.nodeconfig.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import cn.idev.excel.annotation.*;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.TIME_ZONE_DEFAULT;

@Schema(description = "管理后台 - 审核节点 Response VO")
@Data
@ExcelIgnoreUnannotated
public class NodeConfigRespVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "15995")
    @ExcelProperty("主键ID")
    private Integer id;

    @Schema(description = "节点编码（如LEFT_1、RIGHT、DEPT_SELECT等）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("节点编码（如LEFT_1、RIGHT、DEPT_SELECT等）")
    private String nodeCode;

    @Schema(description = "节点名称（如信息中心经办人审核、科信处选择审核人）", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
    @ExcelProperty("节点名称（如信息中心经办人审核、科信处选择审核人）")
    private String nodeName;

    @Schema(description = "审核人（单人用账号，多人用逗号分隔或JSON数组）")
    @ExcelProperty("审核人（单人用账号，多人用逗号分隔或JSON数组）")
    private String auditor;

    @Schema(description = "修改时间（自动更新）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("修改时间（自动更新）")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    @JsonFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, timezone = TIME_ZONE_DEFAULT)
    private Date modifyTime;

}
